﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;

using AALib.Input;
using AALib.Sprite;
using AALib.Entity;
using AALib.Collision;

namespace WeatherGame
{
    public enum TileType
    {
        GRASS,
        DESERT,
        WATER,
        FORREST,
        MOUNTAIN,
    }

    public class Tile: Entity
    {
        private TileType m_type;
        public TileType Type
        {
            get;
        }

        public Tile(TileType p_type, Vector2 p_position, Game game, SpriteBatch spritebatch)
            : base(game, spritebatch)
        {
            m_type = p_type;
            m_position = p_position;
        }

        public abstract void UpdateTile(GameTime gameTime);

        public override void Update(GameTime gameTime)
        {
            base.Draw(gameTime);
        }

        public override void Draw(GameTime gameTime)
        {
            base.Draw(gameTime);
        }

        public Tile Clone()
        {
            return new Tile() { m_position = this.m_position,
                                m_type = this.m_type,
                                m_spritebatch = this.m_spritebatch,
                                game = this.game};
            
        }
    }
}
